EXTEND—STEP 3: Our scoreboard isn't updating when we hit the basket. Let's fix that!

Variables created OUTSIDE an event can't be changed INSIDE an event. We use the keyword global to make an exception to this rule. global lets us use a variable inside and outside of an event.

  • Inside your collision event, drag in Global Variable within your if statement. It should be indented twice.
  • Change the variable name from my_var to score.

To navigate the page using the TAB key, first press ESC to exit the code editor.

stage.set_background("moon") sprite = codesters.Sprite("alien1") sprite.go_to(-175, -150) net = codesters.Sprite("basketballnet") net.go_to(215, 175) instructions = codesters.Text("Click on the sprite to shoot the basketball. Hit the basket to score a point!") instructions.go_to(0, 50) instructions.set_color("white") stage.set_gravity(10) sprite.set_gravity_off() def click(sprite): ball = codesters.Sprite("basketball") ball.go_to(-175, -125) ball.set_x_speed(10) ball.set_y_speed(10) # add other actions... sprite.event_click(click) stage.disable_right_wall() def collision(net, hit_sprite): my_var = hit_sprite.get_image_name() if my_var == "basketball": sprite.say("Score!") hit_sprite.hide() # add any other actions... net.event_collision(collision) score = 0 #my_display = codesters.Display(my_var, x, y) my_display = codesters.Display(score, -200, 150)
  • Run Code
  • Submit Work
  • Next Activity
  • Show Console
  • Reset Code Editor
  • Codesters How To (opens in a new tab)